Computer collaboration systems (e.g., clusters), such as networked systems and distributed systems, enable a number of individual computers to work together to manage and provide resources and services. Such clusters may provide improved performance, such as higher availability, scalability, and reliability, as well as improved load-balancing, when compared with other systems. One feature of clusters is the ability to transparently move resources (i.e., “failover”) from one computer to another (or a group of other computers) if a computer crashes, leaves the cluster, or otherwise becomes unavailable.
Clusters also have certain inherited problems. For example, one problem is a cluster's tendency to collapse or suffer a system-wide breakdown when faced with corrupted files, computer viruses, software defects, malicious attacks, and similar issues. This may occur when a problematic resource or service causes one computer in a cluster to crash and the remaining computers in the cluster crash as the resource or service is failed over from one computer to another.